/**
 * Project Name:fastPlat
 * File Name:MdDataService.java
 * Package Name:com.fast.cms.service.article
 * Date:2018年08月26日 09时59分43秒;
 * Copyright (c) 2018, lsflu@126.com All Rights Reserved.
 *
*/

package com.fast.cms.service.article;

import java.util.Map;

import com.fast.base.dao.JdbcDao;
import com.fast.base.dao.JpaDao;
import com.fast.base.db.page.PageView;
import com.fast.cms.model.article.BatchDataInfo;
import com.fast.cms.model.article.MdData;
import com.fast.cms.web.form.BatchDataInfoListForm;
import com.fast.cms.web.form.MdDataForm;
import com.fast.user.model.admin.AdminUser;

/**
 * ClassName:MdDataService <br/>
 * 用途: MdData服务接口 <br/>
 * 开发人员：lushuifa  http://lushuifa.iteye.com/
 * 邮箱:lsflu@126.com
 * @version  1.0
 * @since    JDK 1.6
 * @see
 * Date:     2018年08月26日 09时59分43秒; <br/>
 */
public interface MdDataService extends JpaDao,JdbcDao  {

    /**
	 * 分页获取MdData列表
	 * @return PageView<MdData>
	 */
	public PageView<MdData> getMdDataList(MdDataForm mdDataForm);

	/**
	 * 说明: 导入数据 <br>
	 * 编写者:lushuifa
	 * 创建时间:2018年8月26日 上午10:12:39 </pre>
	 * @param dataType 
	 * @param adminUser 
	 * @param 
	 * @return boolean 说明
	 */
	public String batchSaveMdDataByImpFile(String fileDiskPath, String dataType, AdminUser adminUser);

	/**
	 * 说明: 获取批次列表 <br>
	 * 编写者:lushuifa
	 * 创建时间:2018年8月26日 下午5:25:10 </pre>
	 * @param 
	 * @return PageView<MdData> 说明
	 */
	public PageView<BatchDataInfo> getBatchDataInfoList(BatchDataInfoListForm batchDataInfoListForm);

	/**
	 * 说明: 下载文件 <br>
	 * 编写者:lushuifa
	 * 创建时间:2018年8月27日 下午11:26:23 </pre>
	 * @param imgApp 
	 * @param fileDiskPath 
	 * @param 
	 * @return boolean 说明
	 */
	public byte[] downloadFile(String batchNo, String fileDiskPath, String imgApp);

	/**
	 * 生成批次
	 * @throws InterruptedException
	 */
	void generalBatchDataList() throws InterruptedException;

	/**
	 * 说明:敏感词列表 <br>
	 * 编写者:lushuifa
	 * 创建时间:2018年9月1日 下午6:46:04 </pre>
	 * @param 
	 * @return PageView<MdData> 说明
	 */
	public PageView<Map<String, Object>> getMianGanList();

	void fileterPingPaiGanCi(String uuid, String dataTitle);

	void fileterTitleGanCi(String uuid, String dataTitle);

	
	public int deleteCihui(String mianganCi);

	void repeatCheckMianGanCi(String mianganCi);

	void supplementBatchData();

	void updateBatchCountForMdBatch();
	
	public String checkReaptDataFile(String fileDiskPath);

	public int batchDeleteCihui(String mianganciArray);
}
